/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package cinema.model;

import java.util.ArrayList;

/**
 *
 * @author AlisonSM
 */
public class Cinema {
    private ArrayList<Sessão> sessões;
    private ArrayList<Sala> salas;
    
    public Cinema (){
        this.sessões = new ArrayList<Sessão>();
        this.salas = new ArrayList<Sala>();
    }
    
    public void addSala (int lotação){
        Sala sala = new Sala(getNumdeSalas()+1);
        sala.setLotação(lotação);
        this.salas.add(sala);
        
        System.out.println(sala.getNumSala() + " " + sala.getLotação()); //para testes
    }
    
    public int getNumdeSalas (){
        return salas.size();
    }
    
    public void addSessão(String nomeFilme, String data, String horário, int numsala){
        Sessão sessão = new Sessão();
        Sala sala = salas.get(numsala);
        
        sessão.SetNomeFilme(nomeFilme);
        sessão.SetData(data);
        sessão.SetHorário(horário);
        sessão.setSala(sala);
        sessões.add(sessão);

        System.out.println(sessão.getNomeFilme() + " " + sessão.getData() + " " + sessão.getHora() + " " + sessão.getSala().getNumSala()); // para testes
    }
    
    public void vendeIngresso(int index){
        Sessão sessão = sessões.get(index);
        sessão.vendeIngresso();
    }
    
    public int getIngressosVendidos(int index){
        Sessão sessão = sessões.get(index);
        return sessão.getIngressosVendidos();
    }
    
    public int getIngressosDisponoveis(int index){
        Sessão sessão = sessões.get(index);
        Sala sala = sessão.getSala();
        int ingressosDisponiveis = sala.getLotação() - sessão.getIngressosVendidos();
        return ingressosDisponiveis;
    }
    
    public ArrayList<Sala> getSalas(){
        return salas;
    }
    
    public ArrayList<Sessão> getSessões(){
        return sessões;
    }
}
